home *** CD-ROM | disk | FTP | other *** search
/ The Arsenal Files 8 / The Arsenal Files Collection #8 (Arsenal Computer) (1996).ISO / pcboard / vrs501.zip / VRS-M453.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1996-10-08  |  5KB  |  206 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 3.2O (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     String   STRING001
  20.     String   STRING002
  21.     String   STRING003
  22.     String   STRING004
  23.     String   STRING005
  24.     String   STRING006
  25.     String   STRING007
  26.     String   STRING008
  27.  
  28. ;------------------------------------------------------------------------------
  29.  
  30.     Goto LABEL001
  31.     End
  32.     If (0 == 0) STRING001 = "NO"
  33.     If (0 == 1) STRING001 = "YES"
  34.  
  35.     EndFunc
  36.  
  37.     :LABEL001
  38.     STRING004 = String(PcbNode())
  39.     If (PcbNode() == 0) STRING004 = "A"
  40.     STRING008 = GetEnv(STRING004 + "RECNO")
  41.     STRING008 = ToInteger(STRING008)
  42.     STRING003 = "@X01≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡@X0F"
  43.     STRING005 = String(Random(1000)) + "X" + STRING004
  44.     :LABEL002
  45.     Gosub LABEL004
  46.     If (DGet(0, "CASH") < DGet(0, "LEVEL") * 500) Then
  47.         Backup 80
  48.         ClrEol
  49.         PrintLn "@X0CYou don't have enough cash on hand to get that valuable info!...get lost!@X0F"
  50.         Newline
  51.         Call PPEPath() + "VRS-M19.PPE"
  52.     Else
  53.         Backup 80
  54.         ClrEol
  55.         PrintLn "@X0AIt will cost you @X02", DGet(0, "LEVEL") * 500, "@X0A credits for this info."
  56.         :LABEL003
  57.         InputStr "Are you still interested @X02(@X0EY@X02/@X0EN@X02) _", STRING002, 15, 1, "YN", 0 + 8
  58.         If (STRING002 == "N") Goto LABEL005
  59.         If (STRING002 == "") Then
  60.             Backup 80
  61.             ClrEol
  62.             Goto LABEL003
  63.         Endif
  64.         Backup 80
  65.         ClrEol
  66.         InputStr "@X0EWho do you want to spy on @X0A> _", STRING007, 15, 25, Mask_Ascii(), 0 + 8
  67.         DTop 0
  68.         DTag 0, STRING005
  69.         DSeek 0, STRING007
  70.         If (DChkStat(0) > 0) Then
  71.             Newline
  72.             PrintLn "NOT FOUND"
  73.             Delay (2 * 182) / 10
  74.             Gosub LABEL004
  75.             Goto LABEL002
  76.         Endif
  77.         DGo 0, STRING008
  78.         DPut 0, "CASH", DGet(0, "CASH") - DGet(0, "LEVEL") * 500
  79.         DTop 0
  80.         DTag 0, STRING005
  81.         DSeek 0, STRING007
  82.         STRING006 = Strip(DGet(0, "VITALITY"), " ")
  83.         Select Case (STRING006)
  84.             Case "Y"
  85.                 STRING006 = "ALIVE"
  86.             Case "N"
  87.                 STRING006 = "DEAD"
  88.             Case "C"
  89.                 STRING006 = "CRYO-CORPSE"
  90.             Case "S", "B", "I"
  91.                 STRING006 = "SLEEPING"
  92.         End Select
  93.         Cls
  94.         Newline
  95.         PrintLn "Virtual Reality Soldier - @X0ASpy on another Soldier@X0F"
  96.         PrintLn STRING003
  97.         Newline
  98.         PrintLn "@X02Alias@X01···················@X0E:@X0A ", RTrim(DGet(0, "HANDLE"), " ")
  99.         PrintLn "@X02Experience@X01··············@X0E:@X0A ", Strip(DGet(0, "EXP"), " "), "@POS:46@@X02Level@X01··············@X0E:@X0A ", Strip(DGet(0, "LEVEL"), " ")
  100.         PrintLn "@X02Alive or Dead@X01···········@X0E:@X0A ", STRING006, "@POS:46@@X02# of player kills@X01··@X0E:@X0A ", Strip(DGet(0, "KILLS"), " ")
  101.         PrintLn "@X02Base Hitpoints@X01··········@X0E:@X0A ", Strip(DGet(0, "HITPTS_B"), " "), "@POS:46@@X02Hitpoints Left@X01·····@X0E:@X0A ", Strip(DGet(0, "HITPTS_L"), " ")
  102.         PrintLn "@X02Player Fights Left@X01······@X0E:@X0A ", Strip(DGet(0, "P_FTS_L"), " "), "@POS:46@@X02Robot Fights Left@X01··@X0E:@X0A ", Strip(DGet(0, "R_FTS_L"), " ")
  103.         PrintLn "@X02Offensive Strength@X01······@X0E:@X0A ", Strip(DGet(0, "OFF_STR"), " "), "@POS:46@@X02Defensive Strength@X01·@X0E:@X0A ", Strip(DGet(0, "DEF_STR"), " ")
  104.         PrintLn "@X02Number of times played@X01··@X0E:@X0A ", Strip(DGet(0, "PLAYED"), " "), "@POS:46@@X02Mutation Level@X01·····@X0E:@X0A ", Strip(DGet(0, "INFECTED"), " ")
  105.         PrintLn "@X02Cash on Hand@X01············@X0E:@X0A ", Strip(DGet(0, "CASH"), " "), "@POS:46@@X02Cash in the bank@X01···@X0E:@X0A ", Strip(DGet(0, "BANKED"), " ")
  106.         PrintLn "@X0E───────────────────────────────────────────────────────────────────────────────@X0F"
  107.         PrintLn "@X0A─────@X02Weapon NAMe@X0A────────────@X02Ammo@X0A─@X02Damage@X0A─ ─Armor NAMe────────────────────Damage─@X0F"
  108.         PrintLn Trim(DGet(0, "WEAPT0"), " "), "@X03@POS:30@", RTrim(DGet(0, "WEAPA0"), " "), "@X0C@POS:34@", RTrim(DGet(0, "WEAPD0"), " "), "@POS:43@@X0A", RTrim(DGet(0, "ARMOR_T"), " "), "@POS:74@@X0C", RTrim(DGet(0, "ARMOR_D"), " ")
  109.         If (DGet(0, "WEAPN1") > 0) PrintLn "@X0F", RTrim(DGet(0, "WEAPT1"), " ") , "@POS:30@@X03", RTrim(DGet(0, "WEAPA1"), " ") , "@X0C@POS:34@", RTrim(DGet(0, "WEAPD1"), " ")
  110.         If (DGet(0, "WEAPN2") > 0) PrintLn "@X0F", RTrim(DGet(0, "WEAPT2"), " ") , "@X03@POS:30@", RTrim(DGet(0, "WEAPA2"), " ") , "@X0C@POS:34@", RTrim(DGet(0, "WEAPD2"), " ")
  111.         If (DGet(0, "S_W_NUMBER") > 0) PrintLn "@X0F", RTrim(DGet(0, "S_W_NAME"), " ") , "@X03@POS:30@", RTrim(DGet(0, "S_W_AMMO"), " ") , "@X0C@POS:34@", RTrim(DGet(0, "S_W_DAMAGE"), " ")
  112.         Newline
  113.         Call PPEPath() + "VRS-M19.PPE"
  114.         Goto LABEL005
  115.         :LABEL004
  116.         DCloseAll
  117.         Delete PPEPath() + STRING005 + ".NDX"
  118.         STRING005 = String(Random(1000)) + "X" + STRING004
  119.         DOpen 0, PPEPath() + "USER.DBF", 0
  120.         DnCreate 0, PPEPath() + STRING005 + ".NDX", "HANDLE"
  121.         DGo 0, STRING008
  122.         Return
  123.     Endif
  124.     :LABEL005
  125.     DCloseAll
  126.     Delete PPEPath() + STRING005 + ".NDX"
  127.     End
  128.  
  129. ;------------------------------------------------------------------------------
  130. ;
  131. ; Usage report (before postprocessing)
  132. ;
  133. ; ■ Statements used :
  134. ;
  135. ;    2       End
  136. ;    1       Cls
  137. ;    4       ClrEol
  138. ;    16      Goto 
  139. ;    14      Let 
  140. ;    19      PrintLn 
  141. ;    14      If 
  142. ;    2       Delete 
  143. ;    2       InputStr 
  144. ;    2       Gosub 
  145. ;    1       Return
  146. ;    1       Delay 
  147. ;    5       Newline
  148. ;    2       Call 
  149. ;    4       Backup 
  150. ;    1       EndFunc
  151. ;    1       DOpen 
  152. ;    2       DCloseAll
  153. ;    1       DnCreate 
  154. ;    2       DTop 
  155. ;    2       DGo 
  156. ;    2       DTag 
  157. ;    2       DSeek 
  158. ;    1       DPut 
  159. ;
  160. ;
  161. ; ■ Functions used :
  162. ;
  163. ;    4       *
  164. ;    1       /
  165. ;    16      +
  166. ;    1       -
  167. ;    11      ==
  168. ;    1       <
  169. ;    4       >
  170. ;    7       !
  171. ;    2       ||
  172. ;    14      RTrim()
  173. ;    1       Trim()
  174. ;    2       Random()
  175. ;    14      Strip()
  176. ;    3       String()
  177. ;    1       Mask_Ascii()
  178. ;    6       PPEPath()
  179. ;    2       PcbNode()
  180. ;    1       GetEnv()
  181. ;    1       ToInteger()
  182. ;    37      DGet()
  183. ;    1       DChkStat()
  184. ;
  185. ;------------------------------------------------------------------------------
  186. ;
  187. ; Analysis flags : C
  188. ;
  189. ; C - Call child PPE ■ 3
  190. ;     This is usually normal, but may be a tricky way to launch some
  191. ;     sysop-only commands.
  192. ;     ■ Search for : CALL
  193. ;
  194. ;------------------------------------------------------------------------------
  195. ;
  196. ; Postprocessing report
  197. ;
  198. ;    0       For/Next
  199. ;    0       While/EndWhile
  200. ;    3       If/Then or If/Then/Else
  201. ;    1       Select Case
  202. ;
  203. ;------------------------------------------------------------------------------
  204. ;                 AEGiS Corp - Break the routines, code against the machines!
  205. ;------------------------------------------------------------------------------
  206.